package com.itheima.sh.c_method_03;

public class MethodDemo02 {

    /*
        目标：引用类型数组作为方法参数传递，传递的是地址值
     */
    public static void main(String[] args) {
        //1.静态初始化数组
        int[] arr = {11, 22, 33, 44, 55};
        //2.调用自定义方法数组arr的地址值作为方法参数传递
        printArr(arr);//arr中保存的是地址值，因此这里是地址值传递
    }

    //3.自定义方法打印数组
    public static void printArr(int[] a) {//int[] a=arr 保存的是地址值
        /*
           分析：输出数据格式：[11, 22, 33, 44, 55]
           先输出[,然后遍历数组如果不是最后一个数据：数据, .如果是最后一个数据 ：输出 数据。最后在输出]
         */
        //4. 先输出[
        System.out.print("[");//不能加换行ln
        //5.遍历数组
        for (int i = 0; i < a.length; i++) {//i表示索引
            /*
                1.i==a.length-1 判断i索引是否是最大索引
                2.i==a.length-1 如果相等，说明i是最大索引，那么取出的数据a[i]就是最后一个数据，输出数据
                        System.out.print(a[i])
                3.i==a.length-1 如果不相等，说明i不是最大索引，取出的数据不是最后一个数据，输出数据格式：
                     System.out.print(a[i]+", ")

                     [11, 22, 33, 44, 55]
             */
            //System.out.print((i==a.length-1) ? a[i]:a[i]+", ");
            if (i == a.length - 1) {//判断当前索引是否是最大索引，如果是最大索引，取出的数据一定是最后的数据
                System.out.print(a[i]);
            } else {
                //不是最后数据
                System.out.print(a[i] + ", ");
            }
        }
        //6.输出]
        System.out.println("]");
    }
}


